package com.cmwa.scbp.business.myHome.todo.dao;

import java.util.List;

import org.apache.ibatis.annotations.Param;

import com.cmwa.scbp.base.annotation.MybatisDao;
import com.cmwa.scbp.base.mvc.entity.SearchParam;
import com.cmwa.scbp.business.myHome.todo.entity.TodoVo;

/**
 * 待办表数据访问层
 * 
 * @author ex-zuotc
 * @date 2019-01-30 18:23:07
 */
@MybatisDao
public interface TodoDao {

	public void insertTodo(TodoVo todo);

	public void physicDeleteTodoById(@Param("id") String id);

	public void logicDeleteTodoById(@Param("id") String id);

	public void updateTodoById(TodoVo todo);

	public List<TodoVo> todoListPage(SearchParam sp);

	public TodoVo getTodoById(@Param("id") String id);

	public void updateTodoByProduct(TodoVo todoVo);

	/**
	 * 查询待办list
	 * 
	 * @param currentUserId
	 * @param company
	 *            TODO
	 * @return
	 */
	public List<TodoVo> queryOverviewList(@Param("currentUserId") String currentUserId,
			@Param("company") String company);

	public List<TodoVo> queryList(TodoVo todoVo);

	public List<TodoVo> toUploadListPage(SearchParam sp);

	public List<TodoVo> queryTodoOutFiles(@Param("ids") String ids);

	public void noFileUpload(@Param("id") String id, @Param("noFile") String noFile);

	/**
	 * 查询待办总数
	 * 
	 * @param company
	 *            TODO
	 * @return
	 */
	public int queryTodoCount(@Param("company") String company);

	public List<TodoVo> queryTodoInputFiles(@Param("ids") String ids,
			@Param("queryRejectInputFiles") String queryRejectInputFiles);

	public List<TodoVo> listAllTodo(@Param("company")String company);

}
